#pragma once
#include <vector>
#include <string>
#include "server.h"
#include "thread.h"

using std::string;
using std::vector;

class gf_extract_server : public server
{
public:
	gf_extract_server(){set_name("gf_extract");}
	int start();
};

class gf_merge_server : public server
{
	vector<address> _gf_match;
public:
	string name = "gf_merge";
	gf_merge_server(){set_name(name);}

	void add_gf_match(address s){_gf_match.push_back(s);}
	vector<address> &get_gf_match(){return _gf_match;}

	int start();
};

class gf_match_server : public match_server
{
public:
	gf_match_server(){set_name("gf_match");}
	int start();
};


